Conceptual tagging with conceptual message matching system and method

ABSTRACT

A conceptual tagging and message matching system and method are provided. In one example, the system and method generate web pages or third party web pages with pieces of content combined with the message.

PRIORITY CLAIMS/RELATED APPLICATIONS

This application claims priority under 35 USC 120 and is a continuationin part application of U.S. patent application Ser. No. 12/589,068 filedon Oct. 16, 2009 whose title is “Editorial related advertising contentdelivery system” which in turn claims priority under 35 USC 120 and is acontinuation application of U.S. patent application Ser. No. 11/789,474filed on Apr. 25, 2007 whose title is “Editorial related advertisingcontent delivery system” (now U.S. Pat. No. 7,606,810 issued on Oct. 20,2009) which in turn claims the benefit under 35 USC 119(e) to U.S.Provisional Patent Application Ser. No. 60/795,527 filed on Apr. 27,2006 whose title is “Editorial related advertising content deliverysystem” (now expired), all of which are incorporated herein byreference.

FIELD

The field of the disclosure relates to a system and method fordelivering messages to users using conceptual tagging that matchesmessages to the content requested by the user.

BACKGROUND

Advertisements that are embedded into web pages are well known andvarious methods and systems are used to select the advertisements thatare displayed on the web page. Early systems simply displayed theadvertisements to users without any targeting so that a user would oftenignore the advertisement (not click on it). Later developed systems haveattempted to target specific advertisements to particular users based onkeywords. For example, some systems match an advertisement against anarticle based on keywords that may appear. Such a system is the Google®Ad Sense system. In the Google® Ad Sense system, an advertiser mustreview and select a set of keywords, bid on Google showing theiradvertisement when those keywords appear in an article and then havetheir advertisement appear when they have the winning bid for aparticular keyword. However, this system requires the user to manuallyreview and select one or more keywords as well as provide bids which iscomplicated. It is desirable to provide a system and method in which itis easier for an advertiser to select an area in which they want theiradvertisements to be targeted and also to a system that better targetsadvertisements to users, and it is to this end that the disclosure isdirected.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 illustrates an implementation of a conceptual tagging andadvertisement matching system;

FIG. 1 b illustrates an example of the matching process between a pieceof content and one or more messages in which tags are compared andmessages are ranked according to the number of matching tags and theirweights;

FIG. 2 illustrates another implementation of a conceptual tagging andadvertisement matching system;

FIG. 2 b illustrates an example of the matching process between a pieceof content and one or more messages in which indexed features arecompared directly and messages are ranked according to the number ofmatching features and their weights;

FIG. 3 illustrates an example of a first embodiment of a method forconceptual tagging and advertisement matching that may be practiced bythe conceptual tagging and advertisement matching system;

FIG. 4 illustrates an example of a second embodiment of a method forconceptual tagging and advertisement matching that may be practiced bythe conceptual tagging and advertisement matching system;

FIG. 5 illustrates an example of a piece of content to which anadvertisement is matched using the conceptual tagging and advertisementmatching system;

FIG. 6 illustrates an example of the concepts extracted from the pieceof content in FIG. 5 using the semantic indexing portion of theconceptual tagging and advertisement matching system;

FIG. 7 illustrates an example of an advertisement that is matched to apiece of content using the conceptual tagging and advertisement matchingsystem;

FIG. 8 illustrates an example of the concepts extracted from theadvertisement in FIG. 7 using the semantic indexing portion of theconceptual tagging and advertisement matching system;

FIGS. 9 and 10 illustrates examples of the concept ontology of thesemantic indexing portion of the conceptual tagging and advertisementmatching system that is used to extract concepts in the piece of contentand/or the advertisement;

FIG. 11 illustrates an example of the taxonomy map which relates indexedfeatures to tags that is used to determine what tags can be associatedwith a particular piece of content or advertisement by the taggingportion of the conceptual tagging and advertisement matching system;

FIG. 12 illustrates an example of the concepts of the piece of contentand a particular advertisement being matched using the ad matchingportion of the conceptual tagging and advertisement matching system;

FIG. 13 illustrates an example of the piece of content being displayedwith the matching advertisements using the conceptual tagging andadvertisement matching system;

FIG. 14 illustrates a first example of a website with a piece of contentand the real-time generated advertisements from the conceptual taggingand advertisement matching system including a Feature play feature;

FIG. 15 illustrates a second example of a website with a piece ofcontent and the real-time generated advertisements from the conceptualtagging and advertisement matching system including a Feature playfeature; and

FIG. 16 illustrates a third example of a website with a piece of contentand the real-time generated advertisements from the conceptual taggingand advertisement matching system.

DETAILED DESCRIPTION OF ONE OR MORE EMBODIMENTS

The disclosure is particularly applicable to a conceptual tagging andadvertisement matching system for generating web pages or third partyweb pages with pieces of content combined with advertisement and theFeaturePlay feature and it is in this context that the disclosure willbe described. It will be appreciated, however, that the system andmethod has greater utility since the system can be used to generateother types of displays/presentation to a user and may also beimplemented in other manners that are within the scope of thedisclosure. For example, in addition to the client/server web basedarchitecture illustrated and described below, the conceptual tagging andadvertisement matching system may be implemented on a stand-alonecomputer, as a software as a service (SaaS) model, on a mainframe systemand the like as the disclosure is not limited to the particulararchitecture. In addition, the conceptual tagging and advertisementmatching system and method can be used with any types of pieces ofcontent (images, text, articles, videos, etc.) and can be used togenerate various types of messages (advertisements, marketing messages,related articles, etc.) that an organization wants to deliver to atargeted audience.

FIG. 1 illustrates a minimal implementation of the conceptual taggingand advertisement matching system 100. The system 100 has a FetchingUnit (103) responsible for retrieving a copy of the piece of content ormessage to process (102). The fetched piece of content or message (104)is passed to a semantic indexing unit (105) which uses the Ontology(101) to extracts features from the piece of content or message. TheIndexing Unit (105) produces an indexed piece of content or message(106) containing extracted features (for example terms, synsets, facets,entities, depicted as triangles in FIG. 1) and optionally a copy of thedocument. The features extracted from the piece of content or messagemay be one or more of words, phrases, concepts, dynamically extractedentities, and document classification facets. The indexed piece ofcontent or message (106) is then passed to the Tagging Unit (107) whichuses the Taxonomy Map (102) to determine the tags (depicted as hexagonsin FIG. 1) associated with the piece of content or message based on theextracted features (106). The Extracted Tags (106) are stored in a TagRepository (109). In the system described herein, the conceptsassociated with each message are automatically determined from theextracted features so that the company who wants to pay for the messageto be displayed to users do not have to select keywords. At matchingtime, a request (not represented in the Figure) for messages for aspecific piece of content is sent to the Matching Unit (110). TheMatching Unit (110) matches the tags of the piece of content in therequest with tags of one or more messages in the Tag Repository (109)and selects the most relevant messages to return in response to therequest. See FIG. 1 b for an illustration of the matching process usingtags. Additional details of the tagging process/unit and the messagematching process/unit shown in FIG. 1 are provided in U.S. Pat. No.7,606,810 and U.S. patent application Ser. No. 12/589,068 filed on Oct.16, 2009 whose title are “Editorial related advertising content deliverysystem”, both of which are owned by the same assignee as this patentapplication and both of which are incorporated herein by reference. Anoptional Tagging Queue (112) can be used by the Tag Manager (111) torefresh the tags associated with piece of content when the Ontology(101) or the Taxonomy Map (102) change or stale tags exist. The QueueProcessor (113) takes requests from the Tagging Queue (112) and triggersthe fetching, indexing, tagging and storage of the tags back in the TagRepository (109) as described in FIG. 1.

FIG. 2 illustrates a minimal implementation of the conceptual taggingand advertisement matching system 100. The system 100 has a FetchingUnit (103) responsible for retrieving a copy of the piece of content ormessage to process (102). The fetched piece of content or message (104)is passed to a semantic indexing unit (105) which uses the Ontology(101) to extracts features from the piece of content or message. TheIndexing Unit (105) produces an indexed piece of content or message(106) containing extracted features (for example terms, synsets, facets,entities, depicted as triangles in FIG. 2) and optionally a copy of thepiece of content or message. The Extracted Features (106) are stored ina Features Repository (201). At matching time, a request (notrepresented in the Figure) for messages for a specific piece of contentis sent to the Matching Unit (110). The Matching Unit (110) matches thefeatures of the piece of content in the request with features of one ormore messages in the Feature Repository (201) and selects the mostrelevant messages to return in response to the request. See FIG. 2 b foran illustration of the matching process using indexed features.Additional details of the tagging process/unit and the message matchingprocess/unit shown in FIG. 2 are provided in U.S. Pat. No. 7,606,810 andU.S. patent application Ser. No. 12/589,068 filed on Oct. 16, 2009 whosetitle are “Editorial related advertising content delivery system”, bothof which are owned by the same assignee as this patent application andboth of which are incorporated herein by reference. An optional TaggingQueue (112) can be used by the Tag Manager (111) to refresh the tagsassociated with documents when the Ontology (101) changes. The QueueProcessor (113) takes requests from the Tagging Queue (112) and triggersthe fetching, indexing, tagging and storage of the tags back in theFeatures Repository (201) as described in FIG. 2. Additional details ofthe concept indexing process/unit and semantic search unit shown in FIG.2 are provided in U.S. Pat. Nos. 7,668,825 and 7,783,668 entitled“Search System and Method” that list the first inventor as Claude Vogel,both of which are owned by the same assignee as this patent applicationand both of which are incorporated herein by reference.

FIG. 3 illustrates an example of a first embodiment of a method forconceptual tagging and advertisement matching that may be practiced bythe conceptual tagging and advertisement matching system 100 which is anautomated content and advertisement tagging system that works witheditorial content 304 (for example, a publisher web site) andadvertising/messaging content 303 to select the most relevant messages,such as adverts, to display next to a publisher article. In theembodiments of the system described below, the units and engines may behardware devices that perform the functions and operations describedbelow or may be each a plurality of lines of computer code executed byone or more processing units of the system 100 that can be implementedas one or more computers. The system 100 has one or more knowledgeresources in which an ontology (101) is developed either generally orfor a specific application domain. The ontology can be developed by aperson or automatically generated by some process not described in thispatent. The ontology is a formal representation of knowledge comprisingof one or more of the following document features: 1) a set of synsetsarranged in one or more taxonomies, each synset containing an identifierand a list of synonym terms or expressions; 2) a semantic networklinking the synsets with typed relations such as part/whole, plays arole in, is homonym, is related with; 3) one or more facets comprisingan identifier and a classification rules which determines whether adocument belongs to the facet; and 4) a declarative entity listcomprising an entity extraction rule and a function to generate acorresponding identifier. An example of a relevant ontology and taxonomyare shown in FIGS. 9-10 for the article shown in FIG. 5. The knowledgeresource of the system may also include a taxonomy map (102). Itcomprises a taxonomy of tags. Each tag comprises: 1) an identifier and aweight (used in the ad-matching process); and 2) a predicate includingone or more document feature (term, synset, facet, entity, etc. . . . ),each document feature can optionally be associated with a weight (usedin the tagging process). The ontology is described in more detail inU.S. Pat. Nos. 7,668,825 and 7,783,668 entitled “Search System andMethod” that list the first inventor as Claude Vogel, both of which areowned by the same assignee as this patent application and both of whichare incorporated herein by reference, and the taxonomy map is describedin more detail in U.S. Pat. No. 7,606,810 entitled “Editorial relatedadvertising content delivery system”.

The system 100 may also perform advertising content tagging (Adverts) inwhich advertising content (adverts) (301) and editorial content(articles/web sites, pieces of content, etc.) (302) must be available tothe system 100 through some mechanism, such as Hypertext TransferProtocol (HTTP). The same processing is applied to advertising contentand editorial content in the way described below. The advertisingcontent is processed immediately when an advertiser defines a new advertin the system (303) and the advertiser registers and creates an advertin the Self Service application (304). A notification is added to theTagging Queue (112) and the request will be processed asynchronously bythe Queue Processor (113). An example of the message/advertisement usedis shown in FIG. 7 and an example of the extracted advertisement/messagefeatures is shown in FIG. 8. In order for the message/advertisementmatcher 110 to select the candidate adverts relevant to a givenarticle/website or piece of content, all candidate adverts that willparticipate in the ad matching process must have been tagged, as well asthe article for which ads are sought.

In the system 100, the editorial content tagging are processed, but thesystem does not perform ahead-of-time crawling of editorial content. Inthe system, the first time a user (306) views an article/piece ofcontent using a web browser (307), the widget (308)—a piece ofexecutable code running in the web browser—makes a call to theMessage/Ad Matcher (110) to retrieve a list of suitable messages todisplay based on the piece of content. An example of editorialcontent/piece of content that is tagged by the system is shown in FIG.5. The message/ad Matcher (110) first attempts to find the tagsassociated with the article already stored in the Tag Repository (109).If tags for this article are found, the message/ad Matcher uses thefound tags to select the most relevant adverts for the piece ofcontent/article. If the tags had expired, the message/ad Matcher queuesa request to the Tagging Queue (112) to retag this piece ofcontent/article. If the tags were not found in the Tag Repository, theAd Matcher will return no message/advert, or a selection of defaultmessages/adverts (the selection of which is not described here) and alsoqueues a request to the Tagging Queue (112) to tag the particular pieceof content/article.

The queue processor (113) monitors the Tagging Queue (112) and for eachentry in the queue, the Tagging Processor fetches the tagging requestfrom the queue. The request contains the address of the piece ofcontent/document to tag. In the case of Hypertext Transfer Protocol,this would be a URL. The Queue Processor requests tags for the given URLfrom the Tagging Manager (309). The tagging manager (309) coordinatesthe activities of the Fetcher, Indexer, Tagger and optionally a Writerand it thus first sends a request for tagging to the Fetcher (103). TheFetcher (103) uses the URL to download the content referenced by the URLand the content is either editorial content (piece of content/article)or advertising content (message/advert). The piece of content retrievedby the fetcher is returned to the Tagging Manager. The tagging managerthen passes the piece of content/document to the Indexer (105). TheIndexer processes the piece of content/document and extracts variousfeatures described in the ontology (101) such as terms, expressions,entities, synsets and facets. The indexer produces an indexed piece ofcontent or message (IDOC) which contains the original piece of contentor message and the list of extracted features and the resulting indexedpiece of content or message is returned to the Tagging Manager. Anexample of the piece of content and an example of the extracted featuresare shown in FIG. 6.

The tagging manager then passes the indexed piece of content or message(IDOC) to the Tagger (107) that processes the indexed piece of contentor message and maps the tags associated with the piece of content ormessage based on the description provided in the Taxonomy Map (102). TheTagger generates a list of tags and scores associated with the piece ofcontent or message such as shown in FIG. 11. The Tagger may not processthe piece of content and message in exactly the same way and it isdesirable to support asymmetric behavior. For example, an advertiser maywant to display an ad about gluten-free nutrition next to an articlecontaining a recipe for bread-making; but the advertiser may not want todisplay an ad about bread-making next to an article about gluten-freenutrition. The resulting tags and scores are returned to the TagManager. The tag manager optionally sends a copy of the piece of contentor message (DOC) and indexed piece of content or message (IDOC) to aWriter (310) that stores a copy of the DOC and IDOC to some persistentrepository/storage location (311 and 312) for later use (see workflowabout tag expiration below). Once the tag manager has received the tagsfrom the Tagger and optionally sent a copy of the DOC and IDOC to theWriter, it returns the tags to the Queue Processor (113) and the queueProcessor writes the extracted tags into the Tag Repository (109) (forexample a relational database) which completes the processing of arequest from the Tagging Queue. In particular, the message matcher 110performs the matching of the concepts in the piece of content with theconcepts in the message (See FIG. 12 for example) and selects themessage with the highest score and returns that message (such as anadvertisement) to the user 306 using a web browser 307 to view the pieceof content.

The system 100 may also have an expired tag processor (313) thatmonitors the Tag Repository for events that indicate that the tags arestale. For example, tags associated with a piece of content/document(article or advert) is considered stale if its expiration date has beenreached (an attribute associated with each document in the TagRepository), or if the Ontology (101) or Taxonomy Map (102) havechanged. If a document's tags are expired, a request is put to theTagging Queue (112) to re-tag the document. Tags may expire on a dailyor weekly basis, depending on the rate at which the piece of content ormessage, ontology and taxonomy map are modified.

When re-tagging documents, the Tagging Manager (309) can optionally usethe Cache (314) to retrieve documents or indexed documents to avoidhaving to fetch or index the document again and improve the performanceof the overall system.

FIG. 4 illustrates an example of a second embodiment of a method forconceptual tagging and advertisement matching that may be practiced bythe conceptual tagging and advertisement matching system 100. The system100 shown in FIG. 4 has many of the same elements as shown in FIG. 3that operate and function the same way as described above. In addition,the embodiment of the system shown in FIG. 4 may further include acrawler (402), a URL repository (401), a sorter (403), a search engine(405) and a shard repository (404) wherein the search engine is a sourcefor tagging pieces of content. In more detail, in this embodiment, thecrawler (402) uses the URL of the user selected piece of content todownload the content referenced by the URL wherein the piece of contentis either editorial content (piece of content) or message content(advertisement). The piece of content (DOC) is retrieved by the crawler(402) based on the list of URLs to download from the URL Repository(401). Once downloaded, the document is stored in the DocumentRepository (311) as before.

In this embodiment, the indexer (105) processes the pieces of contentand extracts various features described in the ontology (101) such asterms, expressions, entities, synsets and facets. It produces an indexedpiece of content or message (IDOC) which contains the original piece ofcontent or message and the list of extracted features. The resultingindexed piece of content or message is stored in the Index Repository(312). The sorter (403) inverts the index and produces lists of piecesof content associated with various features (e.g. terms, synsets,entities, facets) which speeds up the retrieval of piece of contentmatching a given query. The sorter (403) also processes the piece ofcontent's identifier (a URL) so that the piece of content can beretrieved given its URL.

In this embodiment, the search engine (405) includes a number ofservices which use the Shard Repository (inverted index) (404) to findthe set of documents matching a query. The shard repository is describedin U.S. Pat. Nos. 7,668,825 and 7,783,668 entitled “Search System andMethod” that list the first inventor as Claude Vogel, both of which areowned by the same assignee as this patent application and both of whichare incorporated herein by reference. One particular query type relevantto this workflow is the query to retrieve a single piece of contentgiven its URL.

FIG. 13 illustrates an example of the piece of content being displayedwith the matching advertisements using the conceptual tagging andadvertisement matching system. In particular, the piece of content 500(shown displayed in a web page in this example) is displayed in a framethat also has a message portion 502 (that can be located anywhere inrelation to the piece of content) with one or more messages (502 a, 502b, 502 c, . . . 502 n as shown in FIG. 13) wherein the messages may beadvertisements, informational messages (like the wiki gardening example502 c) and other types of messages that have been selected by the system100 based on the concepts in the piece of content. The system, however,is not limited to any particular topic area. Thus, as shown in FIGS.14-16, the system 100 (that may be known as the FeatureLink system) maybe used for a technology oriented customer, a gaming oriented customerand/or a cooking oriented customer of the system. Using the system 100,the technology site (which has an article about the Apple iPad) showsmessages about the iPad, an iPad bag and a Kindle for example which areconceptually related to the iPad. Similarly, using the system 100, thegaming site (which has a summary of the new game Halo:Reach), showsmessages about a Halo statue, the Xbox 360 console that can run the Halogame and the like. Using the system 100, the cooking site (that has arecipe for a Crunchburger) displays advertisements about places topurchase the different recipe ingredients since those advertisementsmatch the concepts of the recipe.

Each message 502 as shown in FIG. 14, may have a hook portion 503 and alink portion 504. The hook portion 503 of the message may contain atitle (that may be bolded as shown in the examples) and a short textpiece that hooks the user to click on the link portion 504. In theexample shown in FIG. 14, the link is entitled “Learn More” and launchesa web page or another window (when the message is being provided to abrowser such as in the example in FIG. 14) that contains moreinformation about the product/service and how to purchase theproduct/service identified by the hook portion. In other embodiments,the link may perform other actions to provide the user with moreinformation about the product/service and how to purchase theproduct/service identified by the hook portion. Furthermore, as shown inFIGS. 14 and 15, a message 502 returned to the customer's computer mayalso include a resource link 506 to a resource (wherein the resource istext, static images, animated images, an embedded video, an embeddedaudio, or an embedded interactive resource) so that the messagesreturned to the user who is looking at the piece of content can selectthe resource link and the resource which is pointed to by the resourcelink will be displayed/played for the user. For example, in the FIGS. 14and 15, the resource link is to a video and the resource link isreturned with the message so that the video pointed to by the resourcelink is displayed for the user if the user clicks on the resource link.

While the foregoing has been with reference to a particular embodimentof the invention, it will be appreciated by those skilled in the artthat changes in this embodiment may be made without departing from theprinciples and spirit of the disclosure, the scope of which is definedby the appended claims.

The invention claimed is:
 1. A system for providing messages based onconcepts in a piece of content, the system comprising: a computer havinga processing unit that executes that includes an indexer unit thatreceives one of a user requested piece of content and a message andextracts one or more features from one of the user requested piece ofcontent and the message using an ontology, wherein the ontologycomprises a set of synsets arranged in one or more taxonomies, asemantic network linking the synsets with typed relations, one or morefacets having an identifier and classification rules to determinewhether a document belongs to the facet and a declarative entity listhaving an entity extraction rule and a function to generate acorresponding identifier; a tag repository having a plurality of tags,wherein each tag is associated with one of the piece of content and themessage, wherein each tag is determined from the one or more featuresextracted by the indexer unit; and the processing unit of the computerexecuting including a tag manager unit that receives a user requestedpiece of content, matches one or more messages to the user requestedpiece of content based on the plurality of tags in the tag repository,selects one or more messages from the one or more matched messages anddelivers the one or more selected messages with the piece of content toa user.
 2. The system of claim 1, wherein the indexer unit uses anontology to extract features from one of the user requested piece ofcontent and the message and wherein the ontology further comprises a setof synsets arranged in one or more taxonomies and a semantic networklinking the synsets with typed relations.
 3. The system of claim 1,wherein the hook further comprises one or more of text, static image,animated image, embedded video, embedded audio and embedded interactiveresource.
 4. The system of claim 2, wherein the one or more extractedfeatures are one or more of words, phrases, concepts, dynamicallyextracted entities, and document classification facets from one of theuser requested piece of content and the message.
 5. The system of claim2, wherein the one or more features extracted by the indexer unit arestored in the features repository as the plurality of tags.
 6. Thesystem of claim 1, wherein the tag manager unit further comprises atagger unit that receives the one or more features extracted from one ofthe piece of content and the message and supplies the tag repositorywith a set of tags that are derived from the one or more extractedfeatures.
 7. The system of claim 6, wherein the tagger unitdistinguishes pieces of content from messages and use this informationduring tag determination.
 8. The system of claim 1, wherein the tagmanager unit matches one or more messages to the user requested piece ofcontent based on the similarity of the plurality of tags and selects oneor more messages based on the similarity of the plurality of tags. 9.The system of claim 1, wherein the tag manager unit identifies that atag has become stale.
 10. The system of claim 9 further comprising atagging queue wherein the tag manager unit sends a request to thetagging queue to generate one or more new tags for one of the userrequested piece of content and the message.
 11. The system of claim 10,wherein the tag manager unit sends a request to the tagging queue whenone or more tags associated with one of the user requested piece ofcontent and the message have become stale.
 12. The system of claim 10,wherein the tag manager unit sends a request to the tagging queue whenthere are no tags associated with one of the user requested piece ofcontent and the message.
 13. The system of claim 1, wherein the tagmanager unit selects one or more default messages for the user requestedpiece of content when the tag manager unit is unable to match sufficientmessages.
 14. The system of claim 1, wherein each message comprises ahook suitable for display alongside a piece of content and a resourcelink to a resource so that the resource is displayed when the resourcelink is selected by the user.
 15. The system of claim 14, wherein theontology further comprises one or more facets comprising an identifierand classification rules that determine whether a document belongs tothe facet.
 16. The system of claim 14, wherein the ontology furthercomprises a declarative entity list comprising an entity extraction ruleand a function to generate a corresponding identifier.
 17. The system ofclaim 1, wherein each message is an advertisement.
 18. The system ofclaim 1, wherein the user requested piece of content is a piece ofcontent on a webpage.
 19. The system of claim 1, wherein each message isan advertisement and the user requested piece of content is a piece ofcontent on a webpage.
 20. The system of claim 1, wherein the message isa related article to the user requested piece of content.
 21. The systemof claim 1 further comprising an indexer repository that stores theextracted features.
 22. The system of claim 1, wherein the extractedfeatures are one or more of words, phrases, concepts, dynamicallyextracted entities, and document classification facets from one of theuser requested piece of content and the message, and wherein the tagmanaging unit further comprises a tagger unit that receives the featuresextracted from one of the piece of content and the message and suppliesthe tag repository with a set of tags that are derived from theextracted features.
 23. The system of claim 22, wherein the tag managerunit matches one or more messages to the user requested piece of contentbased on the similarity of a set of tags and selects one or moremessages based on the similarity of a set of tags.
 24. The system ofclaim 23, wherein each message further comprises an advertisement andthe user requested piece of content is a piece of content on a webpage.25. A method for providing messages based on concepts in a piece ofcontent using an indexer unit and a tag manager unit, the methodcomprising: extracting, using the indexer unit, one or more featuresfrom one of a user requested piece of content and a message usingontology, wherein the ontology comprises a set of synsets arranged inone or more taxonomies, a semantic network linking the synsets withtyped relations, one or more facets having an identifier andclassification rules to determine whether a document belongs to thefacet and a declarative entity list having an entity extraction rule anda function to generate a corresponding identifier; providing, in a tagrepository, a plurality of tags, wherein each tag is associated with oneof the piece of content and a message and each tag is determined fromthe extracted features; receiving, by the tag manager unit, a userrequested piece of content; matching, using tag manager unit, one ormore messages to the user requested piece of content based on theplurality of tags in the tag repository; selecting, using tag managerunit, one or more messages from the one or more matched messages; anddelivering the one or more selected messages with the piece of contentto a user.
 26. The method of claim 25, wherein each message furthercomprises a hook suitable for display alongside a content and a resourcelink to a resource and wherein the method further comprising selecting,by a user, the resource link so that the resource is displayed to theuser.
 27. The method of claim 26, wherein the hook further comprises oneor more of text, static image, animated image, embedded video, embeddedaudio and embedded interactive resource.
 28. The method of claim 25,wherein the extracted features are one or more of words, phrases,concepts, dynamically extracted entities, and document classificationfacets from one of the user requested piece of content and the message.29. The method of claim 28, wherein the extracted features are one ormore of words, phrases, concepts, dynamically extracted entities, anddocument classification facets from one of the user requested piece ofcontent and the message, and wherein the tag managing unit furthercomprises a tagger unit that receives the features extracted from one ofthe piece of content and the message and supplies the tag repositorywith a set of tags that are derived from the extracted features.
 30. Thesystem of claim 29, wherein the tag manager unit matches one or moremessages to the user requested piece of content based on the similarityof a set of tags and selects one or more messages based on thesimilarity of a set of tags.
 31. The system of claim 30, wherein eachmessage further comprises an advertisement and the user requested pieceof content is a piece of content on a webpage.
 32. The method of claim25 further comprising storing the features extracted by the indexer unitin the tag repository as the plurality of tags.
 33. The method of claim25 further comprising supplying, by a tagger unit, the tag repositorywith a set of tags that are derived from the extracted features.
 34. Themethod of claim 33, wherein the tagger unit can distinguish content frommessages and use this information during tag determination.
 35. Themethod of claim 25, wherein matching the one or more messages comprisingmatching, using the tag manager unit, one or more messages to the userrequested piece of content based on the similarity of a set of tags andwherein selecting the one or more messages further comprises selectingthe one or more messages based on the similarity of a set of tags. 36.The method of claim 25 further comprising identifying, using the tagmanager unit, a tag that has become stale.
 37. The method of claim 36further comprising sending a request to a tagging queue to generate oneor more new tags for one of the user requested piece of content and themessage.
 38. The method of claim 37, wherein sending the request furthercomprises sending a request to the tagging queue when one or more tagsassociated with one of the user requested piece of content and themessage have become stale.
 39. The method of claim 38, wherein sendingthe request further comprises sending a request to the tagging queuewhen there are no tags associated with one of the user requested pieceof content and the message.
 40. The method of claim 25, whereinselecting the one or more messages comprises selecting one or moredefault messages for the user requested piece of content when the tagmanage unit is unable to match sufficient messages.
 41. The method ofclaim 25, wherein the ontology further comprises a set of synsetsarranged in one or more taxonomies and a semantic network linking thesynsets with typed relations.
 42. The method of claim 25, wherein theontology further comprises one or more facets comprising an identifierand classification rules that determine whether a document belongs tothe facet.
 43. The method of claim 25, wherein the ontology furthercomprises a declarative entity list comprising an entity extraction ruleand a function to generate a corresponding identifier.
 44. The method ofclaim 25, wherein each message further comprises an advertisement. 45.The method of claim 25, wherein the user requested piece of content is apiece of content on a webpage.
 46. The method of claim 25, wherein eachmessage further comprises an advertisement and the user requested pieceof content is a piece of content on a webpage.
 47. The method of claim25, wherein the message further comprises a related article to the userrequested piece of content.
 48. The method of claim 25 furthercomprising storing the extracted features in an indexer repository.